package cn.software.service;

import cn.software.entity.param.StuTestRecordParam;
import cn.software.entity.param.TakeTestParam;
import cn.software.entity.param.TeacherCorrectPaperParam;
import cn.software.entity.param.TestParam;
import cn.software.entity.vo.*;

import java.util.List;

public interface TestService {

    int addTest(TestParam testParam);

    List<StuTestVo> getTestInfById(Integer id);

    List<TestVo> getAllTest();

    int deleteTestById(Integer id);

    int updateTest(TestParam testParam);

    TestVo getTestById(Integer id);

    //参加考试时间是否过早或者过晚
    int isConflictTestTime(TakeTestParam takeTestParam);

    PaperVo takeTest(TakeTestParam takeTestParam);

    boolean submitTestPaper(StuTestRecordParam stuTestRecordParam);

    boolean teacherCorrectsPaper(TeacherCorrectPaperParam teacherCorrectPaperParam);

    List<TopicAnswerVo> getSAQ(Integer stuTestId);

    TreeVo getTree(Integer teacherId);

    TimeVo getTime(Integer teacherId);
}
